package cn.appsys.service.developer;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import cn.appsys.pojo.AppInfo;

public interface AppInfoService {
	
	public int deleteAppLogo(@Param(value="id")Integer id)throws Exception;
	
	public int modify(AppInfo appInfo)throws Exception;
	
	public AppInfo getAppById(int id)throws Exception;
	
	public List<AppInfo> getAppInfo(
			String softwareName, 
			Integer status, 
			Integer flatformId, 
			Integer categoryLevel1,
			Integer categoryLevel2, 
			Integer categoryLevel3, 
			int devId,
			int currentPageNo, 
			int pageSize);

	public int getCount(
			String softwareName,
			Integer status, 
			Integer flatformId,
			Integer categoryLevel1,
			Integer categoryLevel2,
			Integer categoryLevel3,
			int devId);

	/**
	 * 判断软件名称--softwareName是否唯一
	 * 
	 * @param softwareName
	 * @return
	 * @throws Exception
	 */
	public AppInfo getAppsoftwareName(String softwareName) throws Exception;

	/**
	 * 判断APK名字--APPName是否唯一
	 * 
	 * @param id
	 * @param APKName
	 * @return
	 * @throws Exception
	 */
	public AppInfo getAppName(String APKName) throws Exception;
	
	/**
	 * 新增App信息
	 * 
	 * @param appInfo
	 * @return
	 * @throws Exception
	 */
	public boolean add(AppInfo appInfo) throws Exception;
	
	/**
	 * 根据id、apkName查找appInfo
	 * @param id
	 * @return
	 * @throws Exception
	 */
	public AppInfo getAppInfoS(Integer id,String APKName)throws Exception;
	
	/**
	 * 更新APP状态，上下架操作
	 * @param appInfo
	 * @return
	 * @throws Exception
	 */
	public boolean appsysUpdateSaleStatusByAppId(AppInfo appInfo) throws Exception;
}
